By popular demand, we're meeting with engineers interested in software design and concurrency in our Cluj-Napoca office: 📍Teodor Mihali 62 (Gheorgheni neighbourhood).
𝐆𝐚𝐛𝐫𝐢𝐞𝐥 𝐁𝐨𝐫𝐧𝐞𝐚, 𝐬𝐨𝐟𝐭𝐰𝐚𝐫𝐞 𝐞𝐧𝐠𝐢𝐧𝐞𝐞𝐫 & 𝐭𝐞𝐚𝐦 𝐥𝐞𝐚𝐝 𝐚𝐧𝐝 𝐓𝐢𝐛𝐞𝐫𝐢𝐮 𝐓𝐨𝐟𝐚𝐧, 𝐬𝐨𝐟𝐭𝐰𝐚𝐫𝐞 𝐞𝐧𝐠𝐢𝐧𝐞𝐞𝐫 𝐚𝐭 𝐈𝐍𝐆 𝐇𝐮𝐛𝐬 𝐑𝐨𝐦𝐚𝐧𝐢𝐚 will share their latest insights and learnings with the engineering community.
🔶 𝐄𝐫𝐫𝐨𝐫𝐬, 𝐭𝐡𝐞 𝐟𝐨𝐫𝐠𝐨𝐭𝐭𝐞𝐧 𝐩𝐚𝐫𝐭 𝐨𝐟 𝐲𝐨𝐮𝐫 𝐝𝐨𝐦𝐚𝐢𝐧 | Gabriel Bornea
Errors are usually treated as an afterthought — logged, ignored, or handled inconsistently. But they’re more than just failures; errors represent important domain events that can shape how systems behave and respond to the real world.
In this talk, we will look at how modeling errors explicitly can make applications more predictable, resilient, and easier to maintain. We’ll see how to use sum types and typed errors; and how types like Either<e a=""> and IO<e a=""> help us manage errors without relying on exceptions.
We will also cover ways to accumulate multiple errors, design systems that can recover gracefully from failures, and improve observability with structured error handling. By the end of this session, we’ll have practical techniques to turn errors into a first-class part of our domain, leading to more robust systems and a better development experience.
🔶 𝐎𝐰𝐧 𝐲𝐨𝐮𝐫 𝐝𝐞𝐬𝐢𝐠𝐧: 𝐟𝐮𝐧𝐜𝐭𝐢𝐨𝐧𝐚𝐥 𝐩𝐫𝐢𝐧𝐜𝐢𝐩𝐥𝐞𝐬 𝐯𝐬 𝐭𝐡𝐞 𝐟𝐫𝐚𝐦𝐞𝐰𝐨𝐫𝐤 | Tiberiu Tofan
Frameworks like Spring can tempt engineers to apply various shortcuts that compromise clean design, such as primitive obsession and exception-based error handling. We will discover how to reclaim control by using Domain-Driven Design, hexagonal architecture, and functional programming principles.
In this session, we will go through practical strategies to keep domain logic clean, reduce coupling, and adopt functional error handling. These ensure design remains at the core of the solution, irrespective of what the framework encourages.
𝗥𝗲𝗴𝗶𝘀𝘁𝗿𝗮𝘁𝗶𝗼𝗻 𝗶𝘀 𝗳𝗿𝗲𝗲 & 𝗺𝗮𝗻𝗱𝗮𝘁𝗼𝗿𝘆
🔗
https://bit.ly/INGHubsHangoutsCluj
⚠️ Seating is limited - senior members on our team will select peers who can make full use of the discussion, so 𝐩𝐥𝐞𝐚𝐬𝐞 𝐰𝐚𝐢𝐭 𝐟𝐨𝐫 𝐨𝐮𝐫 𝐜𝐨𝐧𝐟𝐢𝐫𝐦𝐚𝐭𝐢𝐨𝐧.
🎤 𝗦𝗽𝗲𝗮𝗸𝗲𝗿𝘀
𝐆𝐚𝐛𝐫𝐢𝐞𝐥 (𝐆𝐚𝐛𝐢) 𝐁𝐨𝐫𝐧𝐞𝐚, 𝐬𝐨𝐟𝐭𝐰𝐚𝐫𝐞 𝐞𝐧𝐠𝐢𝐧𝐞𝐞𝐫 & 𝐭𝐞𝐚𝐦 𝐥𝐞𝐚𝐝 𝐚𝐭 𝐈𝐍𝐆 𝐇𝐮𝐛𝐬 𝐑𝐨𝐦𝐚𝐧𝐢𝐚
Gabriel has been working with JVM languages for over 15 years; he’s into functional programming, automatic testing and reactive programming. He has a strong background in Java, Kotlin, and TypeScript, but still enjoys the occasional dive into Scala or F#.
He contributes to open-source projects whenever he can and is one of the most popular ING Hubs Romania speakers at various conferences where he discusses the benefits and practicality of functional programming. Gabriel enjoys sharing practical insights on building resilient, maintainable systems—focusing on despaghettifying code to make it more robust, readable, and easy to work with.
𝐓𝐢𝐛𝐞𝐫𝐢𝐮 (𝐓𝐢𝐛𝐢) 𝐓𝐨𝐟𝐚𝐧, 𝐬𝐨𝐟𝐭𝐰𝐚𝐫𝐞 𝐞𝐧𝐠𝐢𝐧𝐞𝐞𝐫 𝐚𝐭 𝐈𝐍𝐆 𝐇𝐮𝐛𝐬 𝐑𝐨𝐦𝐚𝐧𝐢𝐚
Tiberiu has been with ING Hubs Romania for six years now and is experienced in JVM – mostly Java, Scala, and Kotlin. In the two decades (and counting) on the JVM front, Tiberiu’s focus has been on solid architecture, functional design, and maintainable code.
He is dedicated to building solutions that endure over time, prioritising reliability and simplicity.
_____________________
𝗜𝗡𝗚 𝗛𝘂𝗯𝘀 𝗵𝗮𝗻𝗴𝗼𝘂𝘁𝘀 is a series of talks, masterclasses, and workshops by ING Hubs Romania, delivering opportunities for learning, networking, and sharing on technology trends, programming languages and related topics.</e></e>
Also check out other Workshops in Cluj-Napoca, Meetups in Cluj-Napoca.